update record_consumer and record_sale

FFIB 5 年之前
父节点
当前提交
f18a91dbb8
共有 2 个文件被更改,包括 26 次插入15 次删除
  1. 25 14
      api/admin_views.py
  2. 1 1
      api/mch_views.py

+ 25 - 14
api/admin_views.py

@@ -9,7 +9,7 @@ from itertools import chain, groupby
9 9
 
10 10
 from django.conf import settings
11 11
 from django.db import transaction
12
-from django.db.models import Count, Sum
12
+from django.db.models import Count, Sum, Q
13 13
 from django_logit import logit
14 14
 from django_response import response
15 15
 from paginator import pagination
@@ -41,10 +41,10 @@ def querysn(request):
41 41
     if not AdministratorInfo.objects.filter(admin_id=admin_id, admin_type=AdministratorInfo.MAINTENANCE, user_status=AdministratorInfo.ACTIVATED, status=True).exists():
42 42
         return response(AdministratorStatusCode.MAINTENANCE_NOT_FOUND)
43 43
 
44
-    log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, submit_during_activity=True).order_by('has_used', '-pk').first()
44
+    log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, submit_during_activity=True, status=True).order_by('has_used', '-pk').first()
45 45
 
46 46
     if not log:
47
-        log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn).order_by('-submit_during_activity', 'dupload').first()
47
+        log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, status=True).order_by('-submit_during_activity', 'dupload').first()
48 48
 
49 49
     if not log:
50 50
         return response(ProductMachineStatusCode.SN_NOT_FOUND)
@@ -63,7 +63,7 @@ def queryusedsn(request):
63 63
     if not AdministratorInfo.objects.filter(admin_id=admin_id, admin_type=AdministratorInfo.MAINTENANCE, user_status=AdministratorInfo.ACTIVATED, status=True).exists():
64 64
         return response(AdministratorStatusCode.MAINTENANCE_NOT_FOUND)
65 65
 
66
-    logs = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, admin_id=admin_id, has_used=True).order_by('-used_at')
66
+    logs = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, admin_id=admin_id, has_used=True, status=True).order_by('-used_at')
67 67
     logs = [log.data for log in logs]
68 68
 
69 69
     return response(200, 'Query Used SN Success', u'查询核销序列号成功', data={
@@ -95,7 +95,8 @@ def usecoupon(request):
95 95
         model_id=model_id,
96 96
         serialNo=sn,
97 97
         submit_during_activity=True,
98
-        has_used=False
98
+        has_used=False, 
99
+        status=True
99 100
     ).first()
100 101
     if not log:
101 102
         return response(ProductMachineStatusCode.SN_NOT_FOUND)
@@ -559,11 +560,13 @@ def statistic_consumer(request):
559 560
 
560 561
 def record_consumer(request):
561 562
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
563
+    page = request.POST.get('page', 1)
564
+    num = request.POST.get('num', 20)
562 565
     admin_id = request.POST.get('admin_id', '')
563 566
     start_time = request.POST.get('start_time', '')
564 567
     end_time = request.POST.get('end_time', '')
565
-    model_name = request.POST.get('model_name', '')
566
-    phone = request.POST.get('phone', '')
568
+    query = request.POST.get('query', '')
569
+    dupload = request.POST.get('dupload', 0)
567 570
 
568 571
     if brand_id != settings.KODO_DEFAULT_BRAND_ID:
569 572
         return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
@@ -573,22 +576,26 @@ def record_consumer(request):
573 576
     except AdministratorInfo.DoesNotExist:
574 577
         return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
575 578
     
576
-    logs = ConsumeInfoSubmitLogInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time, test_user=False, model_uni_name__contains=model_name, phone__contains=phone)
579
+    logs = ConsumeInfoSubmitLogInfo.objects.filter(Q(status=True) & Q(ymd__gte=start_time) & Q(ymd__lte=end_time) & Q(test_user=False) & Q(model_name__contains=query) | (Q(phone__contains=query))).order_by('-created_at')
577 580
 
581
+    count = logs.count()
582
+    logs, left = pagination(logs, page, num)
578 583
     logs = [log.admindata for log in logs]
579 584
 
580 585
     return response(200, 'Get Consumer Record Success', u'获取消费者销售记录成功', data={
581
-        'logs': logs
586
+        'logs': logs,
587
+        'count': count,
588
+        'left': left
582 589
     })
583 590
 
584 591
 def record_sale(request):
585 592
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
586 593
     admin_id = request.POST.get('admin_id', '')
594
+    page = request.POST.get('page', 1)
595
+    num = request.POST.get('num', 20)
587 596
     start_time = request.POST.get('start_time', '')
588 597
     end_time = request.POST.get('end_time', '')
589
-    model_name = request.POST.get('model_name', '')
590
-    clerk_name = request.POST.get('clerk_name', '')
591
-    distributor_name = request.POST.get('distributor_name', '')
598
+    query = request.POST.get('query', '')
592 599
 
593 600
     if brand_id != settings.KODO_DEFAULT_BRAND_ID:
594 601
         return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
@@ -598,10 +605,14 @@ def record_sale(request):
598 605
     except AdministratorInfo.DoesNotExist:
599 606
         return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
600 607
     
601
-    logs = SaleclerkSubmitLogInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time, test_user=False, test_sn=False, model_uni_name__contains=model_name, clerk_name__contains=clerk_name, distributor_name__contains=distributor_name)
608
+    logs = SaleclerkSubmitLogInfo.objects.filter(Q(status=True) & Q(ymd__gte=start_time) & Q(ymd__lte=end_time) & Q(test_user=False) & Q(test_sn=False) & (Q(model_name__contains=query) | Q(clerk_name__contains=query) | Q(distributor_name__contains=query))).order_by('-created_at')
602 609
 
610
+    count = logs.count()
611
+    logs, left = pagination(logs, page, num)
603 612
     logs = [log.admindata for log in logs]
604 613
 
605 614
     return response(200, 'Get Sale Record Success', u'获取销售员销售记录成功', data={
606
-        'logs': logs
615
+        'logs': logs,
616
+        'count': count,
617
+        'left': left
607 618
     })

+ 1 - 1
api/mch_views.py

@@ -317,7 +317,7 @@ def consumer_info_api(request):
317 317
                 continue
318 318
 
319 319
         # 更新销售员提交的表
320
-        logs = SaleclerkSubmitLogInfo.objects.filter(code=serialNo, model_pk=model.pk)
320
+        logs = SaleclerkSubmitLogInfo.objects.filter(code=serialNo, model_pk=model.pk, status=True)
321 321
         for log in logs:
322 322
             log.has_scan = True
323 323
             log.save()